Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.01.2014, 19:23
Аспирант
Отправить личное сообщение для salat-production Посмотреть профиль Найти все сообщения от salat-production
 
Регистрация: 22.10.2012
Сообщений: 40

Http Json Post
Приветствую.
Помогите разобраться. Гугл затер до дыр, но так ничего в итоге не получилось.
Простая задача.

На URL
http://c1api.hypercomments.com/api/migrate
отправить json
{
	"widget_id":WIDGET_ID,
	"pages":[
		{"from":"example.com/old/path/1","to":"example.com/new/path/11","type":"href"}
	]
}


Окей. Аяксом прожимаю.
$(document).ready(function(){
	$.ajax({
		url: 'http://c1api.hypercomments.com/api/migrate',
		type: 'POST', 
		data: { "widget_id":1111,
				"pages":[
				{"from":"example.com/old/path/1","to":"example.com/old/path/2","type":"href"}
			  ]}
	}).done(function(data){
		$("#result").html(data);
	});
});


Ну и ответ 500 internal server error. Саппорт утверждает, что все работает. Значит я чего то не понимаю. Объясните пожалуйста.

Cкриншот из документации


Последний раз редактировалось salat-production, 21.01.2014 в 20:32.
Ответить с цитированием
  #2 (permalink)  
Старый 21.01.2014, 19:48
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,149

salat-production,
может всётаки строка а не обьект в дата ??
'{"widget_id":1111,"pages":[{"from":"example.com/old/path/1","to":"example.com/old/path/2","type":"href"}]}'
Ответить с цитированием
  #3 (permalink)  
Старый 21.01.2014, 20:01
Аспирант
Отправить личное сообщение для salat-production Посмотреть профиль Найти все сообщения от salat-production
 
Регистрация: 22.10.2012
Сообщений: 40

рони,
{"widget_id":1111,"pages":[{"from":"example.com/old/path/1","to":"example.com/old/path/2","type":"href"}]}
undefined

HTTP/1.1 500 Internal Server Error
Server: nginx
Date: Tue, 21 Jan 2014 16:05:00 GMT
Connection: close
content-length: 0

Последний раз редактировалось salat-production, 21.01.2014 в 20:07.
Ответить с цитированием
  #4 (permalink)  
Старый 21.01.2014, 20:36
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Вы читали доку?


http://hypercomments.com/documentation/api-get_count

И исчо: данные для пересылки - такие:
alert(
  'data=' + JSON.stringify({ "widget_id":1111,
				"pages":[
				{"from":"example.com/old/path/1","to":"example.com/old/path/2","type":"href"}
			  ]})
);


Проверил на пыхе:

<pre>
<?php
$params =  array("widget_id" => 1111, "pages" => array( array("from" => "example.com/old/path/1","to" => "example.com/old/path/2", "type" => "href") ) );
$data = 'data=' . json_encode($params);
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, 'http://c1api.hypercomments.com/api/migrate');
curl_setopt ($ch, CURLOPT_HEADER, TRUE);
curl_setopt ($ch, CURLOPT_POST, TRUE);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
curl_close($ch);


Ответ:
Код:
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 21 Jan 2014 17:15:53 GMT
Connection: close
content-length: 46
Access-Control-Allow-Credentials: true
Access-Control-Allow-Methods: GET, POST
Access-Control-Allow-Headers: Content-Type, *
Access-Control-Allow-Origin: 

{"result":"error","description":"token error"}

Последний раз редактировалось melky, 21.01.2014 в 21:16.
Ответить с цитированием
  #5 (permalink)  
Старый 26.01.2014, 00:27
Аспирант
Отправить личное сообщение для salat-production Посмотреть профиль Найти все сообщения от salat-production
 
Регистрация: 22.10.2012
Сообщений: 40

Тогда следующий вопрос.
Каким макаром передать token отдельным параметром вслед за data?
Упоротый у них апи совершенно. Точнее дока. Вообще нихрена не понимаю.
Ответить с цитированием
  #6 (permalink)  
Старый 26.01.2014, 00:42
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от salat-production Посмотреть сообщение
Тогда следующий вопрос.
Каким макаром передать token отдельным параметром вслед за data?
Упоротый у них апи совершенно. Точнее дока. Вообще нихрена не понимаю.
подозреваю , что так:
$data = 'data=' . json_encode($data) . '&token=FOO';

ну, не в строку, а покрасивше можно сделать, но не суть.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу распарсить JSON. gorenie jQuery 3 29.11.2013 22:26
почему селект вдруг перестал работать в эксплорере и гуглхроме? Краса (X)HTML/CSS 44 04.05.2013 19:18
нужна отправка post запросов через jQuery в формате Json mstdmstd Events/DOM/Window 2 31.05.2012 15:08
JSON или JSONP для запросов на другой сервер? Метод GET, для длинных сообщений? Kotakota jQuery 5 23.08.2011 23:12
jQuery. Обработка ошибок и JSON. mma_mma jQuery 3 19.07.2010 12:10